<?php
/**
 *
 * @package api
 * @subpackage collections
 */


/** 
 * Abstract Class Registry
 *
 * Parent class for all registry storage containers.  Mandates basic access of key/value pairs.
 *
 * @package api
 * @subpackage collections
 * @author Richard Fullmer <php-api@byu.edu>
 * 
 * @version 1.0
 */
abstract class Registry extends Singleton {
	/**
	 * Get a value from the Registry based in its key.
	 *
	 * @param mixed $key - The key to get from the registry.
	 * @return mixed - The value of this key.
	 */
    abstract protected function get( $key );
	
	/** 
	 * Set a key/value pair to be stored in this registry.
	 *
	 * @param mixed $key - The key to store in this registry.
	 * @param mixed $val - The value to store in this registry.
	 */
    abstract protected function set( $key, $val );

}

?>